#ifndef BIASED_LIBSVM_CLASSIFIER_H__CMU_
#define BIASED_LIBSVM_CLASSIFIER_H__CMU_

#include "base_classifier.h"

class offset_classifier : public base_classifier {
protected :
	base_classifier * base;
	double threshold;
public:
	virtual bool train(boosting_problem & prob, double * d_t, int argc, char ** argv);
	virtual double test(boosting_node * x);
	virtual void load(string filename);
	virtual void dump(string filename);
	offset_classifier();
	virtual ~offset_classifier();
protected :
	virtual base_classifier * get_base_classifier() = 0;
};

#define OFFSET_LIBSVM_CLASSIFIER "offset_libsvm_classifier"

class offset_libsvm_classifier : public offset_classifier {
protected :
	virtual base_classifier * get_base_classifier();
	virtual string get_type() {return OFFSET_LIBSVM_CLASSIFIER;}
};

#endif